// miniprogram/pages/admin/category/category.js
const app = getApp();

Page({

  /**
   * 页面的初始数据
   */
  data: {
    category:['不分类','新生儿' ,'儿童','家庭','婚纱','婚礼','旅拍', '写真', '情侣', '创意', '风光', '商业', '美食', '建筑', '其他'] ,
    dbcategory: []
  },

  saveCatatery: function(e){
    let title = e.detail.value.title;
    if (!title){
      wx.showToast({
        title: '分类名称不能为空',
        icon: 'none'
      })
      return;
    }
    title = title.trim();
    if (title.length == 0){
      wx.showToast({
        title: '分类名称不能为空',
        icon: 'none'
      })
      return;
    }
    if (this.data.dbcategory.length >= 20){
      wx.showToast({
        title: `自定义分类数量不能超过20，如有需要，请联系客服`,
        icon: 'none'
      })
      return;
    }
    if (this.data.category.indexOf(title) >= 0){
      wx.showToast({
        title: `分类名称${title}已存在`,
        icon: 'none'
      })
      return;
    }
    let exists = false;

    this.data.dbcategory.map((v,i)=>{
      if (v.title==title){
        wx.showToast({
          title: `分类名称${title}已存在`,
          icon: 'none'
        });
        exists = true;
        return false;
      }
    })
    if (!exists){
      wx.showLoading({
        title: '正在保存数据',
      })
      wx.cloud.callFunction({
        name: 'crud',
        data: {
          op: 'add',
          table: 'category',
          data: {studioid: app.globalData.user.studioid, title: title}
        },
        success: res=>{
          wx.hideLoading();
          this.data.dbcategory.push({title: title, _id: res.result._id})
          this.setData({dbcategory:this.data.dbcategory });
          this.hideModal();
        }
      })
    }

    
  },

  changeCategory: function(e){
    console.log(e.currentTarget.dataset);
    this.getOpenerEventChannel().emit('changeCategory', {item: e.currentTarget.dataset.item});
    wx.navigateBack();
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    app.login(user=>{
      if (!user.studioid) {
        wx.navigateBack();
        return;
      }
      this.loadItems();
    })
  },

  loadItems: function(e){
    const that = this;
    app.login(user=>{
      wx.cloud.callFunction({
        name: 'crud',
        data: {
          op: 'get',
          table: 'category',
          where: {studioid: user.studioid},
          field: {title: true}
        },
        success: res=>{
          that.setData({dbcategory: res.result.data});
        }
      })
    });
  },

  removeCategory: function(e){
    const _id = e.currentTarget.dataset.id;
    const title = e.currentTarget.dataset.item;
    const that = this;
    
    wx.showModal({
      content: `您确定要删除分类 ${title}吗？`,
      success: res=>{
        if (res.confirm){
          wx.cloud.callFunction({
            name: 'crud',
            data: {
              op: 'remove',
              table: 'category',
              _id: _id
            },
            success: r=>{
              that.loadItems();
            }
          })
        }
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },
  showModal(e) {
    let modalname = e.currentTarget.dataset.modalname
    this.setData({
      modalname
    })

  },
  hideModal () {
    this.setData({
      modalname: null
    });
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})